package com.muyu.cloud.commodity.mapper;

import com.muyu.cloud.commodity.domain.req.ProductStatsReq;
import com.muyu.cloud.commodity.domain.resp.ProductStatsResp;
import org.apache.ibatis.annotations.Mapper;
import org.apache.ibatis.annotations.Param;

import java.util.List;

/**
 * 商品统计Mapper
 * @author muyu
 * @date 2025/01/20
 */
@Mapper
public interface ProductStatsMapper {

    /**
     * 获取商品统计概览数据
     */
    ProductStatsResp.GrowthData getStatsOverview(@Param("req") ProductStatsReq req);

    /**
     * 获取商品趋势数据
     */
    List<ProductStatsResp.TrendData> getTrendData(@Param("req") ProductStatsReq req);

    /**
     * 获取商品排行数据
     */
    List<ProductStatsResp.ProductRanking> getProductRanking(@Param("req") ProductStatsReq req);

    /**
     * 获取商品浏览量统计
     */
    Long getViewCount(@Param("req") ProductStatsReq req);

    /**
     * 获取商品数量统计
     */
    Long getProductCount(@Param("req") ProductStatsReq req);

    /**
     * 获取总销量统计
     */
    Long getTotalSales(@Param("req") ProductStatsReq req);

    /**
     * 获取总销售额统计
     */
    Double getTotalAmount(@Param("req") ProductStatsReq req);
}


